package com.yixing.tech.system.service;

import com.yixing.tech.common.base.BusinessException;
import com.yixing.tech.common.base.IBaseService;
import com.yixing.tech.common.vo.s3.MenuVO;
import com.yixing.tech.common.vo.s3.UserVO;
import org.bson.types.ObjectId;

import java.util.List;

/**
 * @author yixing tech
 * at 2021/12/31
 * describe：
 */
public interface IMenuService extends IBaseService<MenuVO,MenuVO> {

    /**
     * 添加子菜单
     * @param vo
     * @throws BusinessException
     */
    void addChild(MenuVO vo)throws BusinessException;

    List<MenuVO> list(MenuVO vo, UserVO userVO)throws BusinessException;
    /**
     * 删除子菜单
     * @param vo
     * @throws BusinessException
     */
    void delete(MenuVO vo)throws BusinessException;

    /**
     * 自动填充父菜单
     * @param list
     * @return
     * @throws BusinessException
     */
    List<String> fillParentId(List<String> list)throws BusinessException;

}
